Location determination using differential round trip time vectors using an airborne platform

ABSTRACT

A method and devices are disclosed for producing a differential RTT vector (RTV) that is based upon the relative change in an airborne measuring station velocity relative to the target wireless device based upon RTT measurements, the RTT measurements being taken at known time intervals to a ground based target station, and the velocity and heading of the airborne measuring station. In one embodiment, the target device is an access point or station conforming to the IEEE 802.11 standard and the airborne measuring station 110 may also be a device that conforms to the IEEE 802.11 standard. The disclosed method enables the quick determination of the location of a target station to an accuracy of, for example, in the order of one half degree of bearing within, for example, a period in the order of 5 seconds.

CROSS-REFERENCE TO RELATED APPLICATION

This Application is related to and claims priority to U.S. Provisional Application No. 62/770,348, filed Nov. 21, 2019, entitled LOCATION DETERMINATION USING DIFFERENTIAL ROUND TRIP TIME VECTORS USING AN AIRBORNE PLATFORM, the entire contents of which is incorporated herein by reference.

TECHNICAL FIELD

The present disclosure relates to geo-location of wireless devices and in particular to a method and system for the geo-location of wireless local area network (WLAN) devices.

BACKGROUND

Initially, it is noted that IEEE Standard 802.11-2016 is used as the base reference for disclosures used herein, the entire contents of which are incorporated herein by reference. The IEEE 802.11 Standard is commonly referred to as “Wi-Fi” and is referred to as such herein.

The location of wireless devices can be determined by various methods. These methods may be classified as active, passive and combined active and passive. In an active location scheme, a device that is determining the location or range, the measuring device, transmits certain packets to the device being located, the target device, and the common method is to measure the time of arrival (TOA) of the response from the target device and compare that to the time of departure (TOD) of the packet transmitted by the measuring device so as to determine the round trip time (RTT).

In such location systems, it is common to use multiple measuring devices to determine the location. In such a scheme, simultaneous TOA and/or TOD measurements are taken by different measuring devices situated at different points and the location of the target device is calculated based on the measurements.

In an active location scheme, TOD may be measured for a packet that is transmitted from the measuring station (device) addressed to the target station (device). The TOA of the response from the target station at the measuring station is then also measured. If the turnaround time for the target station to receive the packet from the measuring station and to start to transmit the response is known, then the time difference at the measuring station between the TOA and the TOD, minus the turnaround time at the target station will be directly proportional to twice the distance of the target station from the measuring station. For example, if the target station is a wireless device based upon IEEE 802.11 technology, and if the packet transmitted from the measuring station to the target station is a data packet, the response from the target station will normally be an acknowledgement (ACK) packet. If the packet transmitted from the measuring station to the target station is a control packet, for example, a request-to-send (RTS) packet, then the response from the target station will normally be a clear-to-send (CTS) packet. In these two examples, the turnaround time at the target station is defined in the IEEE 802.11 standard as the short interframe spacing (SIFS) which is a preset value. Hence, the time delay, td, between the measuring station and the target station may be determined from the calculation td=(TOA−TOD−SIFS)/2 and the distance between the measuring station and the target station is then td*c, where c is the speed of light. This method of estimating the distance to a target station by measuring the TOD and TOA and accounting for the turnaround time is known.

FIG. 1 is a diagram of a typical location system 100 which includes three measuring stations 10 a, 10 b and 10 c (referred to collectively herein as “measuring stations 10” or “measuring receivers”). The target station 120 is a wireless device, for example, an Access Point (AP) that is to be located by the three measuring stations 10. The distance of the target station 120 from measuring station 10 a is D1, 130. The distance of the target station 120, e.g., access point (AP) from measuring station 10 b is D2, 140. The distance of the target station 120 from measuring station 10 c is D3, 150. The round trip time, RTT1, determined from the calculation RTT=(TOA−TOD−SIFS), is measured for transmissions from measuring station 10 a and this can used to calculate the distance D1 130 using the formula D1=RTT1*c/2 where c is the speed of light. Similarly, RTT2 and RTT3 measurements result in the determination of distances D2 140 and D3 150. The methods for calculating the location of target station 120 using the distances D1, 130, D2 140 and D3 150 are known.

In case there is a single measuring station 10, as may be the case when the station is airborne, then the three measuring distances D1 130, D2 140 and D3 150 may be taken at different points in time. An amount of time is required in order for the measuring station 10 to travel to the positions represented by 10 a, 10 b and 10 c as shown in FIG. 1, so as to ensure angular intersections greater than 90 degrees which would result in an acceptable geometrical dilution of precision GDOP. Over time the location of target station 120 can be calculated with increasing accuracy as more measurements are taken by the measuring station 10 from varying positions. Such calculations are well known in the art, but there is a significant time delay before meaningful locations may result.

If, in order to obtain a faster location result, a directional antenna is utilized at the measuring station 10, then a direction may be known in addition to the distance to the target calculated from the RTT. FIG. 2 is a diagram of a measuring station 10 that is transmitting a ranging signal to a target station 120. The range 210 of the target station 120 from the measuring station 10, D 210, may be estimated from the RTT. If a directional antenna is deployed at the measuring station 10 then the angle, Φ 220, of the direction of the received signal from the target station 120 can be measured. The location of the target station 120 can then be estimated as being a distance of D 210 from the measuring station 10 along a vector that is at an angle of Φ 220 relative to the measuring station 10. The accuracy of the estimated location will be dependent upon the directivity of the antenna at the measuring station 10, and the accuracy of the RTT measurement.

The directivity of an antenna increases with the size and gain of the antenna. For example, an antenna with 5 degree beamwidth at 2.4 GHz may have dimensions on the order of 1.6 meters or 5.3 feet. Even with such a directivity, if the measuring station 10 is airborne at an altitude of 10,000 feet and at a ground distance of 3 miles, then the ground location accuracy, based solely upon the antenna angle, of such a vector based location, as described in FIG. 2, would be about ±1400 feet.

In order to measure an accurate location of the target station 120 from an airborne measuring station 10 within a time period of seconds, then the use of a directional antenna requires an antenna of large dimensions which may be impractical for mounting on the airborne platform. In addition, a directional antenna may need to be controlled in elevation and azimuth so as to point in the direction of the target station 120 resulting in complex circuitry and/or a gimballed antenna assembly, which also may be impractical for mounting on the airborne platform.

SUMMARY

Some embodiments advantageously provide methods and airborne stations for the geo-location of wireless local area network (WLAN) devices. According to one aspect, a method for an airborne station for determining a location of a ground-based wireless device (WD) is provided. The method includes, at each of a plurality of positions of the airborne station over a time period T: determining a distance between the airborne station and the WD, and recording a velocity of the airborne station and a corresponding heading of the airborne station. The method also includes, after expiration of the time period T, determining an average velocity, average heading and average distance based at least in part on the determined distances and recorded velocities and headings of the airborne station over the time period T. The method also includes determining a velocity component in a direction between the airborne station and the WD based at least in part on at least one of a change in distance between the airborne station and the WD and a time interval over which the change in distance occurred. The method further includes, determining an angle between a line from the airborne station to the WD and a line from a position of the airborne station at a beginning of the time period T to a position of the airborne station at an end of the time period T, the angle being determined based at least in part on at least one of the determined velocity component, the average velocity, average heading and the average distance, and determining a location of the WD based at least in part on the determined velocity component and determined angle.

According to this aspect, in some embodiments, the determined velocity component is based at least in part on a difference between a first one of the recorded distances at a first point and a second one of the recorded distances at a second point, divided by the time of travel of the airborne station from the first point to the second point. In some embodiments, the determined velocity component is given by Vt=(Ds−Dt)/T, where Ds and Dt are recorded distances between the airborne station and the WD. In some embodiments, the determined angle is an angle between a line connecting the airborne station and the WD and a velocity vector in the direction between the airborne station and the WD. In some embodiments, the determined angle is given by:

${\theta\; t} = {\cos^{- 1}\left( \frac{{Ds} - {Dt}}{TVa} \right)}$ where Ds and Dt are recorded distances between the airborne station and the WD and Va is a recorded velocity of the airborne station. In some embodiments, the determined angle is an angle between a line connecting the airborne station and the WD and the determined velocity component V_(t) according to: Φ=π/2+sin−1(Vt/Va) where V_(a) is a recorded velocity of the airborne station. In some embodiments, the location is determined by solving the following equation for D_(E): Vt=(D _(E) −D _(C))/(te−tc) where Vt is the determined velocity component, D_(E) is a distance between the airborne station and the WD determined at an end of the time period T and D_(C) is a distance between the airborne station and the WD determined at a beginning of the time period T given by (te−tc), and where t_(c) is the start time of the time period T and t_(e) is the end time of the time period T. In some embodiments, the time period T is chosen based at least in part on a radius of curvature of a path of travel by the airborne station. In some embodiments, the determined distances are measured with reference to a line connection a position of the airborne station at a beginning of the time period T and a position of the airborne station at an end of the time period T. In some embodiments, the time period T is chosen based at least in part on a recorded velocity of the airborne station.

According to another aspect, an airborne station for determining a location of a ground-based wireless device (WD) is provided. The airborne station includes processing circuitry configured to: at each of a plurality of positions of the airborne station over a time period T determine a distance between the airborne station and the WD, and record a velocity of the airborne station and a corresponding heading of the airborne station. The processing circuitry is further configured to, after expiration of the time period T, determine an average velocity, average heading and average distance based at least in part on the determined distances, and recorded velocities and headings of the airborne station recorded over the time period T. The processing circuitry is further configured to determine a velocity component in a direction between the airborne station and the WD based at least in part on at least one of a change in distance between the airborne station and the WD and a time interval over which the change in distance occurred. The processing circuitry is further configured to determine an angle between a line from the airborne station to the WD and a line from a position of the airborne station at a beginning of the time period T to a position of the airborne station at an end of the time period T, the angle being determined based at least in part on at least one of the determined velocity component, the average velocity, average heading and the average distance. The processing circuitry is further configured to determine a location of the WD based at least in part on the determined velocity component and determined angle.

According to this aspect, in some embodiments, the determined velocity component is based at least in part on a difference between a first one of the recorded distances at a first point and a second one of the recorded distances at a second point, divided by the time of travel of the airborne station from the first point to the second point. In some embodiments, the determined velocity component is given by Vt=(Ds−Dt)/T, where Ds and Dt are recorded distances between the airborne station and the WD. In some embodiments, the determined angle is an angle between a line connecting the airborne station and the WD and a velocity vector in the direction between the airborne station and the WD. In some embodiments, the determined angle is given by:

${\theta\; t} = {\cos^{- 1}\left( \frac{{Ds} - {Dt}}{TVa} \right)}$ where Ds and Dt are recorded distances between the airborne station and the WD and Va is a recorded velocity of the airborne station. In some embodiments, the determined angle is an angle between a line connecting the airborne station and the WD and the determined velocity component V_(t) according to: Φ=π/2+sin−1(Vt/Va) where V_(a) is a recorded velocity of the airborne station. In some embodiments, the location is determined by solving the following equation for D_(E): Vt=(D _(E) −D _(C))/(te−tc) where Vt is the determined velocity component, D_(E) is a distance between the airborne station and the WD determined at an end of the time period T and D_(C) is a distance between the airborne station and the WD determined at a beginning of the time period T given by (te−tc), and where t_(c) is the start time of the time period T and t_(e) is the end time of the time period T. In some embodiments, the time period T is chosen based at least in part on a radius of curvature of a path of travel by the airborne station. In some embodiments, the determined distances are measured with reference to a line connection a position of the airborne station at a beginning of the time period T and a position of the airborne station at an end of the time period T. In some embodiments, the time period T is chosen based at least in part on a recorded velocity of the airborne station.

According to yet another aspect, an airborne station is configured to determine a location of a ground-based wireless device. The airborne station includes processing circuitry configured to: determine a distance between the airborne station at a start time t_(c) to produce distance D_(C) and at an end time t_(e) to produce D_(E). The processing circuitry is further configured to determine a velocity component in a direction between the airborne station and the WD according to: Vt=(D _(E) −D _(C))/(te−tc) where Vt is the determined velocity component in a direction along a line connecting the airborne station and the wireless device. The processing circuitry is further configured to determine an angle between a line directed along a path of the airborne station and a line connecting the airborne station and the wireless device according to: Φ=π/2+sin−1(Vt/Va) where Va is a magnitude of a velocity vector in a direction of the airborne station, and the location of the wireless device is specified by D_(E) and Φ.

BRIEF DESCRIPTION OF THE DRAWINGS

A more complete understanding of the present disclosure, and the attendant advantages and features thereof, will be more readily understood by reference to the following detailed description when considered in conjunction with the accompanying drawings wherein:

FIG. 1 is a diagram of a typical location system which includes three measuring stations;

FIG. 2 is a diagram depicting a measuring station that is transmitting a ranging signal to a target station;

FIG. 3 is a timing diagram showing a ranging method of the present disclosure that may be used to determine the distance between two wireless devices;

FIG. 4 is a timing diagram that describes in further detail the ranging method of FIG. 3;

FIG. 5 is a diagram depicting an example of one embodiment of the disclosure using RTT vectors (RTVs) based upon velocity vectors;

FIG. 6 is a diagram depicting another example of one embodiment of the disclosure using RTVs based upon velocity vectors;

FIG. 7 is a diagram depicting an example of another embodiment of the disclosure using RTVs based upon velocity vectors;

FIG. 8 is a diagram depicting the example of an embodiment of the disclosure using RTVs based upon velocity vectors as described in FIG. 7;

FIG. 9 is a tabular representation of the results of the angular error dθ_(t) versus the angle θ_(t);

FIG. 10 is a diagram that may be used to estimate the RTT error due to the orbit radius;

FIG. 11 is an example table of the angular error δθo for various orbit radii for values of T=5 seconds and airborne measuring station velocity Va of 120 mph;

FIG. 12 illustrates a wireless communication device which, according to an embodiment of the disclosure, may be used as the airborne measuring station;

FIG. 13 is a flow diagram of a process of one embodiment of the disclosure; and

FIG. 14 is a flow diagram of a process in an airborne station for determining the location of a ground-based wireless device.

DETAILED DESCRIPTION

Although this disclosure uses Wi-Fi as an example for the measurement of the round trip time (RTT), it should be clear to someone moderately skilled in the art that the RTT measurement processes described herein can be measured for other wireless technologies.

In one embodiment of the present disclosure, a single airborne measuring station is used. A method and devices are disclosed that locate the target station to an accuracy in the order of one half degree of bearing, in some embodiments within a period in the order of 5 seconds. A method and devices are disclosed for producing a differential RTT vector (RTV) that is based upon the relative velocities referenced to the changes in position of the airborne measuring station position and the corresponding RTT results measured at known time intervals. In one embodiment, the target station is an access point or station conforming to the IEEE 802.11 standard and the airborne measuring station may also be a device that conforms to the IEEE 802.11 standard.

Returning now to the drawing figures, FIG. 3 is a timing diagram that describes a ranging method of the present disclosure that may be used to determine the distance between two wireless devices, for example wireless device STA A 300 and wireless device STA B 305. In one embodiment, one of the wireless devices (i.e., one of STA A 300 and STA B 305) may be a target station such as target station 120. In another embodiment, at least one of wireless devices (i.e., at least one of STA A 300 and STA B 305) is a measuring station such as a measuring station 110. In some embodiments, the measuring station 110 may be a measuring station 10 modified in accordance with the disclosure made herein. Time axis 310 refers to the time axis for STA A 300 and time axis 320 refers to the time axis for STA B 305. At time T1 211, STA A 300 transmits a packet 312 to STA B 305. This transmission packet 312 is received at STA B 305 at time T2 313. The propagation time of the transmission packet 312 is thus (T2−T1) 330. STA B 305 transmits a response packet 324 at time T3 323. The time 311 that has elapsed between the reception of the packet at time T2 313 and the transmission at time T3 323 is the turnaround time 311 at STA B 305. The turnaround time 311 at STA B, as specified in IEEE 802.11-2016, will be equal in duration to SIFS. At time T4 314, STA A 300 receives the response 324 from STA B 305. The propagation time of the transmission packet 324 is (T4−T3) 334. It should be noted that the time differences 330 (T2−T1) and 334 (T4−T3) represent the propagation time, td, of the transmissions and should be equal assuming the distance between the two stations has not changed. The total time that elapses between the transmission packet 312 and the response packet 324 at STA A 300 is (T2−T1)+(T3−T2)+(T4−T3)=(T4−T1)=td+SIFS+td  (1) Hence,td=(T4−T1−SIFS)/2  (2)

Expression (2) is a simplified equation that is provided to explain the basic idea of the ranging transmission method. Note that the duration of the transmitted packet and the response packet is not accounted for in equation (2). Note, however, that in practice it is common that the timestamp of a packet is set to coincide with the end of the packet at the point where the frame check is completed.

FIG. 4 is a timing diagram that describes in further detail the ranging transmission method of FIG. 3. Time axis 410 is the time axis for STA A 300 and time axis 420 is the time axis for STA B 305. At time Ta 411, STA A 300 starts the transmission of packet 312 which is addressed to STA B 305. After a time delay of td, at time Tb 421, STA B 305 starts to receive packet 312. At time Tc 412, STA A 300 completes the transmission of packet 312 and at time Td 422, STA B 305 completes the reception of packet 312. The time difference between Tc 412 and Td 422 is td, the propagation time for the packet to travel from STA A 300 to STA B 305. Note that the time differences (Tc−Ta) and (Td−Tb) are both the duration tp 430 of the transmitted packet 312.

STA B 305 transmits the response packet 324 at time Te 423. Assuming that the response is an ACK or an RTS packet in reply to the received packet 312, time Te 423 ideally will be at a time t_(SIFS) 332 after time td 422, where t_(SIFS) 332 is the SIFS time as defined in the IEEE 802.11-2016 standard. At time Tf 413, STA A 300 starts to receive the response 324. At time Tg 424, STA B 305 completes the transmission of the response 324 and at time Th 414, STA A 300 completes receiving the response 324. Note that the time differences (Tb−Ta), (Td−Tc), (Tf−Te) and (Th−Tg) are all equal and have the value td which is the propagation time for the packet and response to travel between the two STAs 300 and 305.

At STA A 300, the time of a packet at the point when the frame check has completed, may be recorded. Hence, if STA A 300, is the measuring station, the time for the transmission of packet 312 that is recorded is Tc 412, and the time that is recorded for the reception of the response 324 is Th 414. In order to calculate the value of td, it may be necessary to know the duration tr 434 of the response 324. Calculating the duration tr 434 may be straightforward as the measuring station STA A 300 can monitor the details of the response packet such as data rate and length. In practice therefore, STA A 300 can calculate the value of td from expression (3): td=(Th−Td−tr−t _(SIFS))/2  (3) and hence the corresponding distance,D=td*c  (4)

Stated another way, STA A 300 begins transmission of ranging packet 312 at a beginning transmission time Ta 411 and ends transmission of the ranging packet 312 at an ending transmission time Tc 412. STA B 305 begins receiving the first ranging packet 312 at a beginning reception time Tb 421 and receives the complete first ranging packet 312 at an ending reception time Td 422, where td is measured as the time between the ending transmission time Tc 412 and the ending reception time Td 422.

In case there is a single airborne measuring station 110, as may be the case when the station is airborne, then the three measuring distances D1 130, D2 140 and D3 150 may be taken at different points in time. In this case, the airborne measuring station 110 may be flying over an area and periodically transmitting the packets 312, receiving the response packets 324 and calculating the delay time td. Over time the location of AP 120 can be calculated with increasing accuracy as more measurements are taken by the measuring station 110 from varying positions. Such calculations are known.

As mentioned previously, the packet exchange may be any pair of packets where an automatic response packet is sent. Commonly used Wi-Fi packets include an RTS/CTS exchange and a Data (null)/Ack exchange.

FIG. 5 is a diagram of an example of one location determination, i.e., target position determination, embodiment of the disclosure using RTVs based upon velocity vectors. The measuring station 110 is mounted in an airborne platform and will be referred to henceforth as the airborne measuring station 110 or more simply as the airborne station 110. At time ta 515, airborne measuring station 110 is at position A 510. At time tb 525, airborne measuring station 110 is at position B 520. At time ta 515, airborne measuring station 110 transmits to the target station 120 and measures the RTT as described above with reference to FIGS. 2 and 3. The distance D_(A) 516 to target station 120 from point A 510, at time ta is equal to the value RTT_(A)/2c. At time tb 525, airborne measuring station 110 transmits to the target station 120 and again measures the RTT as described above with reference to FIGS. 2 and 3. The distance D_(B) 526 to target 120 from point B 520, at time tb is RTT_(B)/2c. At point A 510, the airborne measuring station 110 is moving in the direction AB at an angle of θ′ 561 relative to the direction of the vector from point A 510 and the location of the target station 120. At point B 520, the airborne measuring station 110 is traveling at a velocity Va 530 at an angle of θ 560 relative to the direction of the vector from point B 520 and the location of the target station 120. The velocity and heading of the airborne measuring station 110 may be derived directly from the GPS inputs to the aircraft electronics. Assuming that the angle ψ 518 subtended by the vectors drawn between the target station 120 and positions A 510 and B 520, is small, such that θ 560 can be assumed to be equal to θ′ 561, then the velocity vector 530 can be resolved into a vector component Vt 540 in the direction of the target station 120 and a vector component Vp 550 at right angles to vector Vt 540. The distance D_(AB) 536 can be derived either directly from the GPS position inputs to the aircraft electronics or by the formula D_(AB)=(t_(b)−t_(a)) Va. Velocity component Vt 540 represents the difference between D_(B) 526 and D_(A) 516 over the difference in times t_(b) 525 and t_(a) 515. Vt=(RTT_(B)−RTT_(A))/2c(t _(b) −t _(a))) Vt=(D _(AB) −D _(A))/(t _(b) −t _(a))  (5)

Hence the value of Va 530 may be obtained from the aircraft electronics and Vt 540 may be calculated from equation (5). Therefore, the angle θ 560 may be calculated. cos θ=Vt/Va θ=cos⁻¹(Vt/Va)  (6)

If vector Vt is positive in value then the component Vt is in the direction towards the target station 120, as shown in FIG. 5. The estimated location of the target station 120 is therefore at a distance of D_(B) 526 at an angle of θ 560 relative to the heading of the airborne platform.

FIG. 6 is a diagram of another example of a location determination embodiment of the disclosure using RTVs based upon velocity vectors. FIG. 6 is similar to FIG. 5 but where the airborne measuring station 110 is moving away from the target station 120, in contrast to that of FIG. 5 where the airborne measuring station 110 is moving towards the target station 120. At time tc 615, airborne measuring station 110 is at position C 610. At time te 625, airborne measuring station 110 is at position E 625. At time tc 615, airborne measuring station 110 transmits to the target station 120 and measures the RTT as described above with respect to FIGS. 2 and 3. The distance Dc 616 to target 120 from point C 610, at time tc 615 is equal to the value RTT_(C)/2c. At time te 625, airborne measuring station 110 transmits to the target station 120 and again measures the RTT as described above with reference to FIGS. 2 and 3. The distance D_(E) 626 to target 120 from point E 620, at time te 625 is RTT_(D)/2c. At point C 610 the airborne measuring station 110 is moving in the direction CE at an angle of Φ′ 661 relative to the direction of the vector from point C 610 and the location of the target station 120. At point E 620, the airborne measuring station 110 is traveling at a velocity Va 630 at an angle of Φ 660 relative to the direction of the vector from point E 620 and the location of the target station 120. Assuming that the angle ψ′ 618 subtended by the vectors drawn between the target station 120 and positions C 610 and E 620, is small such that Φ≈Φ′, then the velocity vector Va 630 can be resolved into a vector Vt 640 in a direction away from the target 120 and a vector Vp 650 at right angles to vector Vt 640. Velocity component Vt represents the difference between D_(E) 626 and D_(C) 616 over the difference in times t_(d) 625 and t_(c) 615. Hence, Vt=(RTT_(E)−RTT_(C))/2c(t _(e) −t _(c)) Vt=(D _(E) −D _(C))/(t _(c) −t _(c))  (7) And Φ=π2+sin⁻¹(Vt/Va)  (8)

Hence, the estimated location of the target 120 is at a distance of D_(E) 626 at an angle of Φ 660 relative to the heading of the airborne measuring station 110.

Note that if the value of Vt is positive, then the direction θ of the target station 120 relative to the heading of the airborne measuring station 110 on the airborne platform may be calculated using equation (6) and if the value of Vt is negative, then the direction Φ of the target station 120 relative to the heading of the airborne measuring station 110 is calculated using equation (8).

As previously mentioned, the angle between the measuring points, A 510 and B 520 or C 610 and E 620, should be such that the angle ψ 518 and ψ′ 618 subtended to the target station 120 should be small such that the path of the airborne measuring station 110 on the airborne platform can be assumed to be in a straight line. It is understood to those skilled in the art that this condition may depend upon the time difference (tb−ta) or (te−tc), the distances D_(A) and D_(B), and the velocity Va 530 and 630 of the airborne platform. The time difference may be set to be a fixed period such that (tb−ta)=(te−tc)=T.

FIG. 7 is a diagram depicting an example of another embodiment of the disclosure using RTVs based upon velocity vectors. Airborne measuring station 110 travels in a nominal straight line starting from location P 710 to location Q 730 via locations S 740, R 720 and T 750. The measuring receiver of the airborne measuring station 110 transmits to the target station 120 and measures the RTT as described above with respect to FIGS. 2 and 3 at regular periods throughout the time taken to travel between points P 710 and Q 730. Between the time T_(P) 711, the time that the measuring receiver is at location P 710, and the time T_(R) 721, the time that the measuring receiver of the airborne measuring station 110 is at location R 720, the airborne measuring station 110 measures a number of RTT's 715 to the target 120. Similarly, between the time T_(R) 721, the time that the measuring receiver is at location R 720, and the time T_(Q) 731, the time that the measuring receiver is at location Q 730, the airborne measuring station 110 measures a number of RTTs 725 to the target station 120. At time T_(R) 721, the airborne measuring receiver 110 calculates the average, RTTs 760, measured over the time T_(R)−T_(P). At time T_(Q) 731, the airborne measuring station 110 calculates the average RTT 770, measured over the time (T_(Q)−T_(R)) and uses the value of (RTTt−RTTs) to calculate the value of the velocity vector Vt in the direction of the target station 120, as described in equations (1) and (3). This value of Vt, together with the value for the velocity and heading of the airborne measuring station 110, is then used to calculate the angle θt 755, the direction to the target station 120 relative to the velocity of the airborne measuring station 110, as described in equations (2) and (4), relative to the location T 750. The value for the velocity and heading of the airborne measuring station 110 may be either the averages of the velocity and headings over the period T_(Q)−T_(P), or the values when the airborne measuring station 110 was at the location T 750 or the values when the airborne measuring station 110 was at the location R 720, or indeed variations on these. The choice as to which heading and velocity for the value for the velocity and heading of the airborne measuring station 110 to use may be influenced by the change in heading of the airborne measuring station 110 over the period of T_(Q)−T_(P). In general, it may be preferable to use the average heading and velocity over this period to account for any curvature in the airborne path.

Assuming that (T_(Q)−T_(R))=(T_(R)−T_(P))=T, and the airborne measuring station 110 continues to geo-locate the target station 120, the direction and distance of the target station 120 from the airborne measuring station 110 would be updated every time period T. In practice the airborne measuring station 110 may be orbiting the target station 120 and hence the path PRQ would be a curve. However, as long as the time T is short, the path of the airborne measuring station 110 may be assumed to be linear over that time period T.

FIG. 8 is a diagram depicting the example of an embodiment of the disclosure using RTVs based upon velocity vectors as described in FIG. 7. The airborne measuring station 110 starts at location P 710 and then moves via points S 740, R 720, and T 750 to point Q 730. As described in FIG. 7, the RTT to the target station 120 may be measured at regular periods throughout. The time to travel between points P 710 and R 720, and between points R 720 and Q730 is T seconds. The time to travel between points P 710 and S 740, and between points S 740 and R 720 and between points R 720 and T 750, and between points T 750 and Q 730 airborne measuring station 110 is T/2 seconds. The distances to target station 120 from points P 710, S 740, R 720, T 750, and Q 730 are Dp 810, Ds 840, Dr 820, Dt 850, and Dq 830 respectively.

The velocity of the airborne measuring station 110 is Va and the angle subtended by the direction of the airborne measuring receiver and the vector to the target station 120 is θp 805. The distance between points P 710 and R 720, and between points R 720 and Q730 is T Va. Assuming that there are no RTT measurement errors, then:

$\begin{matrix} {{Ds} = {\left( {{Dp} + {Dr}} \right)\text{/}2}} & (9) \\ {{{and}\mspace{14mu}{Dt}} = {\left( {{Dr} + {Dq}} \right)\text{/}2}} & (10) \\ {{{At}\mspace{14mu}{point}\mspace{14mu} T\mspace{14mu} 750\mspace{14mu}{Vt}} = {\left( {{Ds} - {Dt}} \right)\text{/}T}} & (11) \\ {{{From}\mspace{14mu}(6)\mspace{14mu}\theta\; t} = {\cos^{- 1}\left( \frac{{Ds} - {Dt}}{TVa} \right)}} & (12) \end{matrix}$

An analysis of the errors associated with this RTV method are now examined.

Assume that in the period T, the airborne station 110 transmits and receives N ranging packets as described above with respect to FIGS. 2 and 3. Let the RTT measurement error by the airborne measuring station 110 be Δ. The average error is Δ/2. If N packets are successfully received at the airborne measuring station 110 over the time period T, then the error in the averaged RTT measurement is reduced by a factor of √N. Hence the standard deviation σ_(t) in the measured values for Ds and Dt is

$\begin{matrix} {\mspace{76mu}{\sigma_{t} = {\pm \frac{\Delta}{2\sqrt{N}}}}} & (13) \\ {\mspace{76mu}{{{From}\mspace{14mu}(12)\mspace{14mu}\cos\;\theta_{t}} = \frac{{Ds} - {Dt}}{TVa}}} & \; \\ {\mspace{76mu}{{\cos\;\theta_{t}} = \frac{{Ds} - {Dt}}{TVa}}} & \; \\ {\mspace{70mu}{{{Taking}\mspace{14mu}{differentials}\mspace{14mu}\sin\;\theta_{t}\mspace{14mu} d\;\theta_{t}} = {{\frac{dD}{TVa}\mspace{14mu}{where}\mspace{14mu} D} = {{Ds} = {Dt}}}}} & \; \\ {\mspace{76mu}{{d\;\theta_{t}} = \frac{dD}{{TVa}\mspace{14mu}\sin\mspace{14mu}\theta_{t}}}} & (14) \\ {{Now},{{{for}\mspace{14mu}{dD}} = {\pm \sigma_{t}}},{{d\;\theta_{t}} = \sigma_{\theta}},{{where}\mspace{14mu}\sigma_{\theta}\mspace{14mu}{is}\mspace{14mu}{the}\mspace{14mu}{standard}\mspace{14mu}{deviation}\mspace{14mu}{of}\mspace{14mu}\theta_{t}}} & \; \\ {\mspace{76mu}{{Hence},{{{from}\mspace{14mu}(13)\mspace{14mu}{and}\mspace{14mu}(14)\mspace{14mu}\sigma_{\theta}} = {\pm \frac{\Delta}{T\mspace{14mu} 2\sqrt{N}{Va}\mspace{14mu}\sin\mspace{14mu}\theta_{t}}}}}} & (15) \end{matrix}$

The standard deviation σ_(θ) of the angle θ_(t) can be calculated using equation (15).

Inspection of equation (15) reveals that the angular error σ_(θ) may be reduced if the time period T is increased. However, if time period T is increased then the assumption that the flight path of the airborne measuring station 110 is a straight line over the time period T may be less true. If the velocity Va, 530 or 630, of the airborne measuring receiver is increased then the angular error σ_(θ) may be reduced, but again, if Va is increased then the assumption that the flight path of the airborne measuring station 110 is a straight line over the time period T may be less true as the distance traveled by the airborne measuring station 110 is further. Although the average distance of the target 120 from the airborne measuring station 110 does not appear in equation (15), the radius of the orbit of the airborne measuring station 110 will affect the choice of the value for T. This is because at a shorter radius the rate of change in the heading of the airborne measuring station 110 is higher and the assumption that the flight path of the airborne measuring station 110 is a straight line over the time period T may be less true if T is chosen to be too long, or indeed, if the velocity Va, 530 or 630 is too high.

Although the average distance of the target 120 from the airborne measuring station 110 does not appear in equation (15), the radius of the orbit of the airborne measuring station 110 may affect the choice of the value for T as at a shorter radius the assumption that the flight path of the airborne measuring station 110 is a straight line over the time period T may not be true if T is chosen to be too long, or indeed, if the velocity Va, 530, 630 is too high. The curvature of the path of the airborne measuring station 110 might cause the measurements of the RTTs to be longer. In FIG. 8, the curvature of the orbit is shown as curve 860. If this was the true course of the airborne measuring station 110, then at time Tr the airborne measuring station 110 would be at point R′ 821 whereas the assumption is that it is at point R 720. Hence there is a potential error due to the orbit of the airborne measuring station 110. The magnitude of this error due to the radius of the orbit is discussed and calculated below with reference to FIG. 10, and is shown to be negligible. Therefore, it reasonably may be assumed that the flight path of the airborne measuring station 110 is a straight line over the time period T.

Inspection of equation (15) also reveals that the lower the RTT measurement error Δ, the better the angular accuracy. Using as an example the case where the target station 120 and the airborne measuring station 110 are based upon IEEE 802.11 technology, Wi-Fi, the measurement of the RTT may be as described in FIGS. 2 and 3. The standard packet timing measurement accuracy of a Wi-Fi device is 1 μs, or 1000 nanoseconds (ns), i.e., Δ=1000 feet. Assuming that 50 ranging packets are exchanged every second, and that T=5 seconds, then the standard deviation σ_(t) (Δ=1000 feet) is

${\sigma_{t}\left( {\Delta = {1000\mspace{14mu}{feet}}} \right)} = {\frac{1000}{2\sqrt{250}} = {31.62\mspace{14mu}{feet}}}$ A clock available in many Wi-Fi devices is at 40 MHz and if the timing measurement accuracy of the airborne measuring station 110 is based upon the edges of this clock, then the timing accuracy may be improved to 125 ns, i.e., Δ=125 feet. Assuming, again, that 50 ranging packets are exchanged every second, and that T=5 seconds, then the standard deviation σ_(t) (Δ=125 feet) is

${\sigma_{t}\left( {\Delta = {125\mspace{14mu}{feet}}} \right)} = {\frac{125}{3\sqrt{250}} = {3.95\mspace{14mu}{feet}}}$

FIG. 9 is a tabular representation of the results of the standard deviation angular error σ_(θ) versus the angle θ_(t) 755 as calculated using equation (15) for both Δ=1000 feet and Δ=125 feet, with N=50 per second, T=5 seconds, and Va=120 mph. For Δ=125 feet the angular error σ_(θ) is in the order of 0.3 degrees for angle θ_(t) 755 values from 45 to 90 degrees. In practice as the airborne measuring station 110 is orbiting the target station 120, it may be relatively simple to keep the angle θ_(t) 755 greater than 45 degrees. Note, however, that using the standard Wi-Fi timing accuracy of Δ=1000 feet, the standard deviation σ_(θ) is in the order of 2.5 degrees as θ_(t) 755 varies from 45 to 90 degrees. In either case it is understood that this accuracy, achieved by measuring timing differences, is comparable to the use of a directional antenna of large dimensions as described with reference to FIG. 4. An accurate location is possible within a short period, for example on the order of 10 seconds, and then updated on the order of every 5 seconds.

As mentioned above, it is assumed that the airborne measuring station 110 travels in a straight line over the time period T. As discussed above with reference to FIG. 8, if the airborne measuring station 110 is flying in an orbit around the target station 120, then the curvature of the path of the airborne measuring station 110 might cause the measurements of the RTTs to be recorded as slightly longer than if the airborne measuring station 110 travels in a straight line over the time period T. Estimation of the RTT error due to the orbit radius is explained with reference to FIG. 10. Points J 1001, K′ 1013, and L 1015 lie on the circumference of a circle centered at point M 910. The radius of the circle is r 1020. The straight line joining points J 1001, K 1012, and L 1015 is the chord connecting points J 1001 and L 1015. The length of the line joining points M 910 and K 1012 is r′ 1025. The length of the line joining points K 1012 and K′ 1013 is δr 1030. The length of the line joining points J 1001 and K 1012 is d 1040. The following analysis applies:

$\begin{matrix} {{r^{2} = {{r^{\prime 2} + {d^{2}\mspace{14mu}{and}\mspace{14mu}\delta\; r}} = {r - r^{\prime}}}}{{{Hence}\mspace{14mu}\delta\; r} = {r - \sqrt{r^{2} - d^{2}}}}{{{Assuming}\mspace{14mu}{that}\mspace{14mu} d{\operatorname{<<}r}\mspace{14mu}\delta\; r} = {r - {r\left( {1 - \frac{d^{2}}{r^{2}}} \right)}^{\frac{1}{2}}}}{{{Reducing}\mspace{14mu}{to}\mspace{14mu}\delta\; r} = \frac{d^{2}}{2r}}} & (16) \end{matrix}$

If point M 910 is the position of the target station, 120, and the airborne measuring station 110 is travelling along the path J K′ L, then 2d represents the distance travelled by the airborne measuring station 110 in time T. When the airborne measuring station 110 is at point K′ 1013 the measured distance to the target station 120 at point M 910 would be r 1020, but when applying equations (6) and (8), as described in FIGS. 6 and 7, the assumption is that the airborne measuring station 110 is at L 1015 and there is no error, so to a first approximation the error due to the circular path of the orbit is δr/2.

Using the terms as per equation (12), d=D_(AB)/2 and r=D_(t). Hence, equation (16) can be re-written as

$\begin{matrix} {{{\delta\; D_{t}} = \frac{D_{AB}^{2}}{16D_{t}}}{{{From}\mspace{14mu}(14)},{{{for}\mspace{14mu}\theta_{t}} = {{90\mspace{14mu}{degrees}\mspace{14mu}{\delta\theta}_{o}} \approx {{- \frac{1}{2D_{AB}}}\delta\; D_{t}}}}}} & (17) \end{matrix}$ Where δθ_(o) is an approximation of the angular error due to the circular orbit of the airborne measuring station 110.

$\begin{matrix} {{{Substitute}\mspace{14mu}{for}\mspace{14mu}(17)\mspace{14mu}{is}\mspace{14mu}{\delta\theta}_{o}} \approx {- \frac{D_{AB}}{32\mspace{14mu} D_{t}}}} & (18) \end{matrix}$

FIG. 11 is a table of examples of the angular error δθo for various orbit radii for values of T=5 seconds and airborne measuring station 110 velocity Va of 120 mph as estimated using equation (18). Comparing the angular error δθo to the angular error σ_(θ) in FIG. 9, δθo is negligible if the measurement accuracy is 1000 ns, but it is of the same magnitude as σ_(θ) if the measurement accuracy is 125 ns. As the orbit radius increases, the error δσo decreases. It should be noted that in practice the radius of the orbit of the airborne measuring station 110 is known. Therefore this error, δθ_(o), can be estimated using equation (19) and compensated for.

FIG. 12 illustrates a block diagram of an example wireless communication device 1200 which, according to an embodiment of the disclosure, may be used as or as part of the airborne measuring station 110 and configured to perform the functions described herein.

The wireless communication device 1200 may be any device configured to wirelessly receive signals and transmit signals, and may be configured to execute any of the methods of the IEEE 802.11-2016 Standard. Wireless communication device 1200 may be one or more stations or access points, and the like. Wireless communication device 1200 may be one or more wireless devices that are based upon the IEEE 802.11 specification and each may be configured to act as a transmitter or a receiver. The embodiment described herein is that where wireless measuring station 1200 includes a wireless transmitter 1210 and a wireless receiver 1250. The wireless communication device 1200 may also include a time clock 1260 and a general purpose processor 1280 which are interconnected to the two wireless transmitter 1210 and wireless receiver 1250 by a data bus 1290. Data bus 1290 may also be used for the interchange of data between the wireless transmitter 1210 and the wireless receiver 1250.

In some embodiments, the wireless transmitter 1210 includes an RF transmitter 1211 and processing circuitry 1212 that includes processor 1213, and memory module 1214. The wireless transmitter 1210 also includes one or more wireless antennas such as wireless antennas 1220. The RF transmitter 1211 may perform the functions of spreading, encoding, interleaving and modulation, as described in IEEE 802.11-2106, and amplification for the transmission of the Wi-Fi packets, via the antenna 1220. In some embodiments, the processing circuitry 1212 and/or the processor 1213 may comprise integrated circuitry for processing and/or control, e.g., one or more processors and/or processor cores and/or FPGAs (Field Programmable Gate Array) and/or ASICs (Application Specific Integrated Circuitry) configured to execute programmatic software instructions. In some embodiments, the some or all of the functions of the RF transmitter 1211 may be performed by the processing circuitry 1212. The processing circuitry 1212 may be configured to control any of the methods and/or processes described herein and/or to cause such methods, and/or processes to be performed, e.g., by the RF transmitter 1211. The memory module 1214 may be configured to store data, programmatic software code and/or other information described herein. In some embodiments, the software may include instructions that, when executed by the processing circuitry 1212, causes the processing circuitry 1212 to perform the processes described herein with respect to the wireless transmitter 1210. The wireless transmitter 1210 may be used to transmit the request ranging packets 312 as described above with respect to FIGS. 3 and 4.

In some embodiments, the wireless receiver 1250 includes an RF front end 1251, an RF receiver 1252, processing circuitry 1253 (that includes a processor 1254 and a memory module 1255) and one or more wireless antennas such as wireless antenna 1230. The RF front end 1251 may perform the usual functions of an RF receiver front end such as low noise amplification, filtering and frequency down conversion so as to condition the received signal suitable for inputting to the RF receiver 1252. The RF receiver 1252 may perform the functions of demodulation, decoding and de-spreading so as to condition the received signal suitable for inputting to the processing circuitry 1253. In some embodiments the RF receiver 1252 and/or the processing circuitry 1253 may comprise integrated circuitry for processing and/or control, e.g., one or more processors and/or processor cores and/or FPGAs (Field Programmable Gate Array) and/or ASICs (Application Specific Integrated Circuitry) configured to execute programmatic software instructions. In some embodiments, the functions of the RF receiver 1252 may be performed by the processing circuitry 1253. The processing circuitry 1253 may be configured to control any of the methods and/or processes described herein and/or to cause such methods, and/or processes to be performed, e.g., by the wireless receiver 1250. The memory module 1255 is configured to store data, programmatic software code and/or other information described herein. In some embodiments, the software may include instructions that, when executed by the processing circuitry 1253, causes the processing circuitry 1253 to perform the processes described herein with respect to the wireless receiver 1250.

According to this embodiment of the disclosure the wireless receiver 1250 may be configured to measure and monitor an input signal's attribute, such as may include one or more of a ranging signal 312 transmitted by wireless transmitter 1210, data and control packets, and the response signal, 324, including control packets, transmitted by an access point or station that may be based upon the IEEE 802.11-2016 Standard. Such packets may include data null, ACK, RTS and CTS packets. The memory module 1255 may store instructions for executing any method mentioned in the IEEE 802.11-2016 Standard, input signals, and results of processing of the processor 1254 signals to be outputted and the like.

According to an embodiment of the disclosure, the RF transmitter 1211 may be configured to transmit signals and the processing circuitry 1212 may be configured to prepare the transmitted signal attributes based upon the IEEE 802.11-2016 Standard. Such transmitted packets may include data packets, control packets and management packets that are to be transmitted by a wireless station that is based upon the IEEE 802.11. Such control packets may include RTS and data null packets. The memory module 1214 may store instructions for executing any method mentioned in the specification, input signals, and results of processing of the processor 1213, signals to be outputted and the like as discussed herein.

According to another embodiment of the disclosure, the wireless receiver 1250 may be configured to receive the transmissions of another wireless communication device 120 and the processing circuitry 1253 may be configured to monitor an attribute of the transmissions of the other wireless communication device, and determine the value of the time of arrival of packets from the other wireless communication device. In addition, according to an embodiment of the disclosure the wireless receiver 1250 may be configured to measure the times of departure of the request transmissions 312 from the wireless transmitter 1210. These times may be accomplished by outputting a trigger that is timed to coincide with the reception packet from the other wireless device 120 or the wireless transmitter 1210. This trigger may then be used to read the time from the time clock 1260. Time clock 1260 may have a precision that is higher than the internal timing synchronization function (TSF) timer that is part of the wireless receiver 1250.

According to an embodiment of the disclosure, the wireless transmitter 1210 may be configured to transmit packets to another wireless communication device and the processor 1213 may be configured to prepare the attributes of the packet to be transmitted.

According to an embodiment of the disclosure, a general purpose processor 1280 may be used to control the operations of the measuring device 1200 and in particular the wireless transmitter 1210 and wireless receiver 1250. The general purpose processor 1280 may also carry out the various calculations as described in this disclosure and may also prepare the measurement results for disclosure to an operator or user. In some embodiments, the general purpose processor 1280 can be a computing device such as a tablet computer, desktop computer, laptop computer, or distributed computing, e.g. cloud computing. In some embodiments, the general purpose processor 1280 can be a processor/CPU in the tablet, laptop computer, desktop computer, or distributed computing environment, etc. In some embodiments the general purpose processor 1280 may comprise integrated circuitry for processing and/or control, e.g. one or more processors and/or processor cores and/or FPGAs (Field Programmable Gate Array) and/or ASICs (Application Specific Integrated Circuitry) configured to execute programmatic software instructions and may include a memory module to execute programmatic code stored in the general purpose processor or another device. It is also noted that the elements of the measuring device 1200 can be included in a single physical device/housing or can be distributed among several different physical devices/housings. Processor 1280 may be used to perform the various calculations as described in this disclosure and may also prepare the measurement results for disclosure to an operator or user.

According to an embodiment of the disclosure, an avionics circuit 1270 may be used to input, via the data bus 1290, to the general purpose processor 1280 and/or the processing circuitry 1253 the position, velocity and heading of the airborne platform that is carrying the wireless communication device 1200 which, according to an embodiment of the disclosure, may be used as or as part of the airborne measuring station 110. The avionics circuit 1270 may comprise navigation equipment such as a GPS receiver.

FIG. 13 is a flow diagram of a process 1300 of one embodiment of the disclosure for determining a target position. Process 1300 may start at step 1310 where the parameter T is set. As described above with respect to FIGS. 7 and 8, as the airborne measuring station 110 orbits the target station 120, the direction and distance of the target station 120 from the airborne measuring station 110 is updated every time period T. The parameter T may be set by direct input from the general purpose processor 1280 or may be preset and stored in the memory module 1255. Step 1310 may be followed by step 1320 where the position, heading θ and velocity Va of the airborne measuring station 110 are recorded. The values for the position, heading and velocity may be established and/or provided by the avionics circuit 1270. Step 1320 may be followed by step 1321 where a ranging packet is transmitted by the wireless transmitter 1210. Step 1321 may be followed by step 1322 where the time that the transmission takes place, t1, is recorded. Time t1 may be recorded by the wireless receiver 1250 and in particular such as by the processing circuitry 1253. Step 1322 may be followed by step 1323 where the time t2 of the response from the target station 120 is recorded. Time t2 may be recorded by the wireless receiver 1250 and in particular by the processing circuitry 1253. Step 1323 may be followed by step 1324 where the distance D from the airborne measuring station 110 to the target station 120 is calculated. The calculation of the distance D may be carried out in the wireless receiver 1250 and in particular such as by the processing circuitry 1253.

Assuming that the airborne measuring station 110 and the target station 120 are Wi-Fi devices, then steps 1321, 1322, 1323 and 1324 may be as described above with reference to FIGS. 2 and 3, and the calculation of the distance D determined by equations (2) and (4) where t1=T1 and t2=T4. Step 1324 may be followed by step 1330 where a check is made to see if time T has expired. If not, then step 1330 may be followed by step 1320 and another ranging packet is transmitted. If time T has expired, then step 1330 may be followed by step 1340 where the averages of the velocity Va and heading θ of the airborne measuring station 110 are calculated over the last time period T. Step 1340 may be followed by step 1345 where the average distance D, as recorded in step 1324 over the time period T, is calculated. Step 1345 may be followed by step 1350 where the velocity component Vt, as described in FIGS. 5 and 6, is calculated as described in equations (5) and (7). Step 1350 may be followed by step 1355 where the angle θt is calculated as described in FIGS. 5, 6 and 8 and equations (6), (8) and (12). At step 1355, the calculation of θt may include a correction for the orbit radius of the airborne measuring station 110 as described in equation (18). The calculations discussed above with reference to steps 1330, 1340, 1345, 1350, and 1355 may be carried out, for example, by the processing circuitry 1253. Step 1355 may be followed by step 1360 where the location of target station 120 may be calculated based upon the calculated value of θt from step 1255, and the distance D to the target station 120 as calculated in step 1345. The calculation of the distance D may be carried out, for example, by the processing circuitry 1253 and/or the general purpose processor 1280. Step 1360 may be followed by step 1365 where the time Tis reset and the process returns to step 1320. The resetting of T in step 1365 may be carried out, for example, by the processing circuitry 1253. As a result of process 1300, at every time period T, the location of the target station 120 is calculated.

FIG. 14 is a flow diagram of a process 1400 of one embodiment of the disclosure for determining by an airborne station 110 a location of a ground-based wireless device. The process includes, at each of a plurality of positions of the airborne station 110 over a time period T (step 1410): determining, via the processing circuitry 1253, a distance between the airborne station 110 and the WD at step 1420 and recording, at memory module 1255, a velocity of the airborne station 110 and a corresponding heading of the airborne station 110 at step 1430. The process also includes, after expiration of the time period T, determining, via the processing circuitry 1253, an average velocity, average heading and average distance based at least in part on the determined, via the processing circuitry 1253, distances and recorded velocities and headings of the airborne station 110 over the time period T at step 1440. The process further includes determining, via the processing circuitry 1253, a velocity component in a direction between the airborne station 110 and the WD based at least in part on at least one of a change in distance between the airborne station and the WD and a time interval over which the change in distance occurred at step 1450. The process includes, at step 1460, determining, via the processing circuitry 1253, an angle between a line from the airborne station 110 to the WD and a line from a position of the airborne station 110 at a beginning of the time period T to a position of the airborne station 110 at an end of the time period T, the angle being determined based at least in part on at least one of the determined velocity component, the average velocity, average heading and the average distance. The process also includes, at step 1470, determining, via the processing circuitry 1253 a location of the WD based at least in part on the determined velocity component and determined angle. Note that in some embodiments, at least some of the process steps attributed to processing circuitry 1253 may instead be performed by the general purpose processor 1280 and/or the processing circuitry 1212.

As will be appreciated by one of skill in the art, the concepts described herein may be embodied as a method, data processing system, and/or computer program product. Accordingly, the concepts described herein may take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment combining software and hardware aspects all generally referred to herein as a “circuit” or “module.” Furthermore, the disclosure may take the form of a computer program product on a tangible computer usable storage medium having computer program code embodied in the medium that can be executed by a computer. Any suitable tangible computer readable medium may be utilized including hard disks, CD ROMs, optical storage devices, or magnetic storage devices.

Some embodiments are described herein with reference to flowchart illustrations and/or block diagrams of methods, systems and computer program products. It will be understood that each block of the flowchart illustrations and/or block diagrams, and combinations of blocks in the flowchart illustrations and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions/acts specified in the flowchart and/or block diagram block or blocks.

These computer program instructions may also be stored in a computer readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer readable memory produce an article of manufacture including instruction means which implement the function/act specified in the flowchart and/or block diagram block or blocks.

The computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions/acts specified in the flowchart and/or block diagram block or blocks.

It is to be understood that the functions/acts noted in the blocks may occur out of the order noted in the operational illustrations. For example, two blocks shown in succession may in fact be executed substantially concurrently or the blocks may sometimes be executed in the reverse order, depending upon the functionality/acts involved. Although some of the diagrams include arrows on communication paths to show a primary direction of communication, it is to be understood that communication may occur in the opposite direction to the depicted arrows.

Computer program code for carrying out operations of the concepts described herein may be written in an object oriented programming language such as Java® or C++. However, the computer program code for carrying out operations of the disclosure may also be written in conventional procedural programming languages, such as the “C” programming language. The program code may execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer or entirely on the remote computer. In the latter scenario, the remote computer may be connected to the user's computer through a local area network (LAN) or a wide area network (WAN), or the connection may be made to an external computer (for example, through the Internet using an Internet Service Provider).

While the above description contains many specifics, these should not be construed as limitations on the scope, but rather as an exemplification of several embodiments thereof. Many other variants are possible including, for examples: the time period and frequency of the transmission of the ranging packets, the timing accuracy, and the type of packets used. Accordingly, the scope should be determined not by the embodiments illustrated, but by the claims and their legal equivalents.

It will be appreciated by persons skilled in the art that the present invention is not limited to what has been particularly shown and described herein above. In addition, unless mention was made above to the contrary, it should be noted that all of the accompanying drawings are not to scale. A variety of modifications and variations are possible in light of the above teachings without departing from the scope of the following claims. 

What is claimed is:
 1. A method for an airborne station for determining a location of a ground-based wireless device (WD), the method comprising: at each of a plurality of positions of the airborne station over a time period T: determining a distance between the airborne station and the WD; and recording a velocity of the airborne station and a corresponding heading of the airborne station; after expiration of the time period T, determining an average velocity, average heading and average distance based at least in part on the determined distances and recorded velocities and headings of the airborne station over the time period T; determining a velocity component in a direction between the airborne station and the WD based at least in part on at least one of a change in distance between the airborne station and the WD and a time interval over which the change in distance occurred; determining an angle between a line from the airborne station to the WD and a line from a position of the airborne station at a beginning of the time period T to a position of the airborne station at an end of the time period T, the angle being determined based at least in part on at least one of the determined velocity component, the average velocity, average heading and the average distance; and determining a location of the WD based at least in part on the determined velocity component and determined angle.
 2. The method of claim 1, wherein the determined velocity component is based at least in part on a difference between a first one of the recorded distances at a first point and a second one of the recorded distances at a second point, divided by the time of travel of the airborne station from the first point to the second point.
 3. The method of claim 2, wherein the determined velocity component is given by Vt=(Ds−Dt)/T, where Ds and Dt are recorded distances between the airborne station and the WD.
 4. The method of claim 1, wherein the determined angle is an angle between a line connecting the airborne station and the WD and a velocity vector in the direction between the airborne station and the WD.
 5. The method of claim 4, wherein the determined angle is given by: ${\theta\; t} = {\cos^{- 1}\left( \frac{{Ds} - {Dt}}{TVa} \right)}$ where Ds and Dt are recorded distances between the airborne station and the WD and Va is a recorded velocity of the airborne station.
 6. The method of claim 4, wherein the determined angle is an angle between a line connecting the airborne station and the WD and the determined velocity component V_(t) according to: Φ=π/2+sin−1(Vt/Va) where V_(a) is a recorded velocity of the airborne station.
 7. The method of claim 1, wherein the location is determined by solving the following equation for D_(E): Vt=(D _(E) −D _(C))/(te−tc) where Vt is the determined velocity component, D_(E) is a distance between the airborne station and the WD determined at an end of the time period T and D_(C) is a distance between the airborne station and the WD determined at a beginning of the time period T given by (te−tc), and where t_(c) is the start time of the time period T and t_(e) is the end time of the time period T.
 8. The method of claim 1, wherein the time period T is chosen based at least in part on a radius of curvature of a path of travel by the airborne station.
 9. The method of claim 8, wherein the determined distances are measured with reference to a line connection a position of the airborne station at a beginning of the time period T and a position of the airborne station at an end of the time period T.
 10. The method of claim 1, wherein the time period T is chosen based at least in part on a recorded velocity of the airborne station.
 11. An airborne station for determining a location of a ground-based wireless device (WD), the airborne station including processing circuitry configured to: at each of a plurality of positions of the airborne station over a time period T: determine a distance between the airborne station and the WD; and record a velocity of the airborne station and a corresponding heading of the airborne station; after expiration of the time period T, determine an average velocity, average heading and average distance based at least in part on the determined distances, and recorded velocities and headings of the airborne station recorded over the time period T; determine a velocity component in a direction between the airborne station and the WD based at least in part on at least one of a change in distance between the airborne station and the WD and a time interval over which the change in distance occurred; determine an angle between a line from the airborne station to the WD and a line from a position of the airborne station at a beginning of the time period T to a position of the airborne station at an end of the time period T, the angle being determined based at least in part on at least one of the determined velocity component, the average velocity, average heading and the average distance; and determine a location of the WD based at least in part on the determined velocity component and determined angle.
 12. The airborne station of claim 11, wherein the determined velocity component is based at least in part on a difference between a first one of the recorded distances at a first point and a second one of the recorded distances at a second point, divided by the time of travel of the airborne station from the first point to the second point.
 13. The airborne station of claim 12, wherein the determined velocity component is given by Vt=(Ds−Dt)/T, where Ds and Dt are recorded distances between the airborne station and the WD.
 14. The airborne station of claim 11, wherein the determined angle is an angle between a line connecting the airborne station and the WD and a velocity vector in the direction between the airborne station and the WD.
 15. The airborne station of claim 14, wherein the determined angle is given by: ${\theta\; t} = {\cos^{- 1}\left( \frac{{Ds} - {Dt}}{TVa} \right)}$ where Ds and Dt are recorded distances between the airborne station and the WD and Va is a recorded velocity of the airborne station.
 16. The airborne station of claim 14, wherein the determined angle is an angle between a line connecting the airborne station and the WD and the determined velocity component V_(t) according to: Φ=π/2+sin−1(Vt/Va) where V_(a) is a recorded velocity of the airborne station.
 17. The airborne station of claim 11, wherein the location is determined by solving the following equation for D_(E): Vt=(D _(E) =D _(C))/(te−tc) where Vt is the determined the velocity component, D_(E) is a distance between the airborne station and the WD determined at an end of the time period T and D_(C) is a distance between the airborne station and the WD determined at a beginning of the time period T given by (te−tc), and where t_(c) is the start time of the time period T and t_(e) is the end time of the time period T.
 18. The airborne station of claim 11, wherein the time period T is chosen based at least in part on a radius of curvature of a path of travel by the airborne station.
 19. The airborne station of claim 18, wherein the determined distances are measured with reference to a line connection, a position of the airborne station at a beginning of the time period T and a position of the airborne station at an end of the time period T.
 20. The airborne station of claim 11, wherein the time period T is chosen based at least in part on a recorded velocity of the airborne station.
 21. An airborne station configured to determine a location of a ground-based wireless device, the airborne station comprising processing circuitry configured to: determine a distance between the airborne station and the wireless device at a start time t_(c) to produce distance D_(C) and at an end time t_(e) to produce distance D_(E); determine a velocity component in a direction between the airborne station and the WD according to: Vt=(D _(E) −D _(C))/(te−tc) where Vt is the determined velocity component in a direction along a line connecting the airborne station and the wireless device; and determine an angle between a line directed along a path of the airborne station and a line connecting the airborne station and the wireless device according to: Φ=π/2+sin−1(Vt/Va) where Va is a magnitude of a velocity vector in a direction of the airborne station, and the location of the wireless device is specified by D_(E) and Φ. 